[INFO] cloning repository https://github.com/alpapie/localhost
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/alpapie/localhost" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falpapie%2Flocalhost", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falpapie%2Flocalhost'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 101c654c0a7e60619018d738d47b7692d623c546
[INFO] checking alpapie/localhost against master#82310651b93a594a3fd69015e1562186a080d94c for pr-145770
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falpapie%2Flocalhost" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/alpapie/localhost
[INFO] finished tweaking git repo https://github.com/alpapie/localhost
[INFO] tweaked toml for git repo https://github.com/alpapie/localhost written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alpapie/localhost on toolchain 82310651b93a594a3fd69015e1562186a080d94c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/alpapie/localhost already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_derive v1.0.204
[INFO] [stderr]   Downloaded uuid v1.10.0
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.92
[INFO] [stderr]   Downloaded autocfg v1.3.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.92
[INFO] [stderr]   Downloaded iana-time-zone v0.1.60
[INFO] [stderr]   Downloaded core-foundation-sys v0.8.6
[INFO] [stderr]   Downloaded js-sys v0.3.69
[INFO] [stderr]   Downloaded mio v0.8.11
[INFO] [stderr]   Downloaded cc v1.1.1
[INFO] [stderr]   Downloaded serde v1.0.204
[INFO] [stderr]   Downloaded serde_json v1.0.120
[INFO] [stderr]   Downloaded once_cell v1.19.0
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.92
[INFO] [stderr]   Downloaded proc-macro2 v1.0.86
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.92
[INFO] [stderr]   Downloaded syn v2.0.70
[INFO] [stderr]   Downloaded libc v0.2.155
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6ec8b23a7788093818b707b00ff694a394916b850441a43b5f94db940736e557
[INFO] running `Command { std: "docker" "start" "-a" "6ec8b23a7788093818b707b00ff694a394916b850441a43b5f94db940736e557", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6ec8b23a7788093818b707b00ff694a394916b850441a43b5f94db940736e557", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ec8b23a7788093818b707b00ff694a394916b850441a43b5f94db940736e557", kill_on_drop: false }`
[INFO] [stdout] 6ec8b23a7788093818b707b00ff694a394916b850441a43b5f94db940736e557
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2f570ca09d8aac2bb3a00b7388131fb1a7ef40886e257f4552aeec5c85438349
[INFO] running `Command { std: "docker" "start" "-a" "2f570ca09d8aac2bb3a00b7388131fb1a7ef40886e257f4552aeec5c85438349", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling serde v1.0.204
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]    Compiling serde_json v1.0.120
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]     Checking iana-time-zone v0.1.60
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.70
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking uuid v1.10.0
[INFO] [stderr]    Compiling serde_derive v1.0.204
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking localhost v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/error/log.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]  --> src/request/parse_header.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use uuid::Uuid;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/server/connection.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, and `Error`
[INFO] [stdout]  --> src/server/connection.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{BufRead, BufReader, Error, ErrorKind, Read, Write};
[INFO] [stdout]   |               ^^^^^^^  ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `self` and `sleep`
[INFO] [stdout]  --> src/server/connection.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread::{self, sleep};
[INFO] [stdout]   |                   ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/error/log.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]  --> src/request/parse_header.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use uuid::Uuid;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/server/connection.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, and `Error`
[INFO] [stdout]  --> src/server/connection.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{BufRead, BufReader, Error, ErrorKind, Read, Write};
[INFO] [stdout]   |               ^^^^^^^  ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `self` and `sleep`
[INFO] [stdout]  --> src/server/connection.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread::{self, sleep};
[INFO] [stdout]   |                   ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/request/parse_header.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |             let mut reader = &mut stream;
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/request/parse_header.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |             let mut reader = &mut stream;
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |             let mut listeners = create_listeners(&config);
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server_name` is never read
[INFO] [stdout]   --> src/config/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Config {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 13 |     pub server_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `version` and `body` are never read
[INFO] [stdout]   --> src/request/parse_header.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct HttpRequest {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 19 |     pub headers: HashMap<String, String>,
[INFO] [stdout] 20 |     pub body: Option<HttpBody>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Json(Value),
[INFO] [stdout]    |     ---- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 25 -     Json(Value),
[INFO] [stdout] 25 +     Json(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Form(HashMap<String, String>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Form(HashMap<String, String>),
[INFO] [stdout] 26 +     Form(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Text(String),
[INFO] [stdout]    |     ---- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Text(String),
[INFO] [stdout] 27 +     Text(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:28:15
[INFO] [stdout]    |
[INFO] [stdout] 28 |     Multipart(Vec<MultipartPart>),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 28 -     Multipart(Vec<MultipartPart>),
[INFO] [stdout] 28 +     Multipart(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `headers` and `body` are never read
[INFO] [stdout]   --> src/request/parse_header.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct MultipartPart {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 33 |     pub headers: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 34 |     pub body: Vec<u8>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MultipartPart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status` and `content` are never read
[INFO] [stdout]   --> src/response/response.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Response {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 16 |     pub status: u32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 17 |     pub header: Vec<String>,
[INFO] [stdout] 18 |     pub content: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Response` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `token` is never read
[INFO] [stdout]   --> src/server/connection.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ConnectionHandler<'a> {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 18 |     pub stream: TcpStream,
[INFO] [stdout] 19 |     token: Token,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConnectionHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_default_listener` is never used
[INFO] [stdout]    --> src/server/server.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn create_default_listener() -> Result<TcpListener, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/server/server.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn create_listeners(config: &HostConfig) -> Option<Vec<ListenerInfo>> {
[INFO] [stdout]    |                             ^^^^^^^^^^^                ------------ the same lifetime is hidden here
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn create_listeners(config: &HostConfig) -> Option<Vec<ListenerInfo<'_>>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |             let mut listeners = create_listeners(&config);
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server_name` is never read
[INFO] [stdout]   --> src/config/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Config {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 13 |     pub server_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `version` and `body` are never read
[INFO] [stdout]   --> src/request/parse_header.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct HttpRequest {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 19 |     pub headers: HashMap<String, String>,
[INFO] [stdout] 20 |     pub body: Option<HttpBody>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Json(Value),
[INFO] [stdout]    |     ---- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 25 -     Json(Value),
[INFO] [stdout] 25 +     Json(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Form(HashMap<String, String>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Form(HashMap<String, String>),
[INFO] [stdout] 26 +     Form(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Text(String),
[INFO] [stdout]    |     ---- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Text(String),
[INFO] [stdout] 27 +     Text(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/request/parse_header.rs:28:15
[INFO] [stdout]    |
[INFO] [stdout] 28 |     Multipart(Vec<MultipartPart>),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HttpBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 28 -     Multipart(Vec<MultipartPart>),
[INFO] [stdout] 28 +     Multipart(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `headers` and `body` are never read
[INFO] [stdout]   --> src/request/parse_header.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct MultipartPart {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 33 |     pub headers: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 34 |     pub body: Vec<u8>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MultipartPart` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status` and `content` are never read
[INFO] [stdout]   --> src/response/response.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Response {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 16 |     pub status: u32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 17 |     pub header: Vec<String>,
[INFO] [stdout] 18 |     pub content: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Response` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `token` is never read
[INFO] [stdout]   --> src/server/connection.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ConnectionHandler<'a> {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 18 |     pub stream: TcpStream,
[INFO] [stdout] 19 |     token: Token,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConnectionHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_default_listener` is never used
[INFO] [stdout]    --> src/server/server.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn create_default_listener() -> Result<TcpListener, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/server/server.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn create_listeners(config: &HostConfig) -> Option<Vec<ListenerInfo>> {
[INFO] [stdout]    |                             ^^^^^^^^^^^                ------------ the same lifetime is hidden here
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn create_listeners(config: &HostConfig) -> Option<Vec<ListenerInfo<'_>>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.82s
[INFO] running `Command { std: "docker" "inspect" "2f570ca09d8aac2bb3a00b7388131fb1a7ef40886e257f4552aeec5c85438349", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f570ca09d8aac2bb3a00b7388131fb1a7ef40886e257f4552aeec5c85438349", kill_on_drop: false }`
[INFO] [stdout] 2f570ca09d8aac2bb3a00b7388131fb1a7ef40886e257f4552aeec5c85438349
